package gen

import (
	"gitee.com/dreamwood/ez-go/maker"
)

func Need() {
	doc := maker.CreateDoc("Need", "采购申请", "erp")
	doc.Add("sn", "单据编号").IsString()
	doc.Add("title", "单据主题").IsString()

	doc.Add("status", "状态").IsJoinM2O("NeedStatus")
	//doc.Add("isConfirm", "是否生效").IsBool()
	//doc.Add("isCancel", "是否取消").IsBool()
	//doc.Add("isLock", "是否锁定").IsBool()
	doc.Add("isClose", "是否关闭").IsBool() //todo 这里我认为关闭和取消是一个状态

	doc.Add("formAt", "制单时间").IsTime()
	//doc.Add("confirmAt", "生效时间").IsTime()
	doc.Add("needAt", "需求时间").IsTime()

	doc.Add("formEmp", "制单人").IsJoinM2O("Emp")
	doc.Add("createEmp", "创建人").IsJoinM2O("Emp")
	doc.Add("needEmp", "需求人").IsJoinM2O("Emp")
	doc.Add("needDept", "需求部门").IsJoinM2O("Department")

	doc.Add("note", "备注").IsString()

	//关联信息
	doc.Add("product", "产品").IsJoinO2M("NeedProduct", "id", "belongToId")

	//审批流程 废弃
	doc.Add("flow", "审批流程").IsInt()
	doc.Add("flowIndex", "当前审批节点").IsInt()
	doc.Add("flowName", "当前审批节点").IsString()
	doc.Add("flowCur", "当前审批节点").IsAny("ss.M")
	doc.Add("flows", "审批过程").IsAny("[]ss.M")
	//新版审批信息
	ApprovalData(doc)

	doc.Generate()
}

func NeedProduct() {
	doc := maker.CreateDoc("NeedProduct", "采购产品", "erp")
	//doc.Add("need", "需求单").IsJoinM2O("Need")
	//doc.Add("product", "产品").IsJoinM2O("Product")
	//doc.Add("num", "数量").IsFloat()
	//doc.Add("unit", "单位").IsJoinM2O("Unit")
	//doc.Add("price", "参考价格").IsFloat()
	//doc.Add("note", "备注").IsString()
	//doc.Add("row", "RN").IsInt()
	doc.Add("belongTo", "所属").IsJoinM2O("Need")
	ComProductItem(doc)
	doc.Generate()
}

func NeedType() {
	doc := maker.CreateDoc("NeedType", "采购类型", "erp")
	doc.Add("name", "名称").IsString()
	doc.Add("sort", "排序").IsInt()
	doc.Generate()
}

func NeedStatus() {
	doc := maker.CreateDoc("NeedStatus", "申请状态", "erp")
	doc.Add("name", "名称").IsString()
	doc.LoadTree()
	doc.LoadStatus()
	doc.Generate()
}
